import { getInfo } from '@api/user'
import { defineStore } from 'pinia'
import { type IRole } from '@interface/user'

interface IUserStore {
  roles: IRole[]
  rolePerm: string
}

export const useUserStore = defineStore('userStore', {
  state(): IUserStore {
    return {
      roles: [],
      // 权限字符串
      rolePerm: ''
    }
  },
  actions: {
    async getUserInfo() {
      const res = await getInfo()
      const { permissions, roles, units, userInfo } = res.data
      // 角色信息
      this.roles = roles
      this.rolePerm = roles[0].rolePerm
    }
  }
  // persist: {
  //   // 开启数据缓存
  //   enabled: true,
  //   strategies: [
  //     {
  //       // 默认使用的是 session
  //       storage: localStorage,
  //       // 要存储的值,如果不写,则默认缓存全部数据
  //       paths: ['rolePerm']
  //     }
  //   ]
  // }
})
